home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The X-Philes (2nd Revision)
/
The X-Philes Number 1 (1995).iso
/
xphiles
/
hp48_1
/
diff.eqs
< prev
next >
Wrap
Text File
|
1995-03-23
|
3KB
|
155 lines
Article 3292 of comp.sys.handhelds:
Path: ux1.cso.uiuc.edu!uwm.edu!cs.utexas.edu!sdd.hp.com!know!samsung!emory!gatech!prism!gt3398b
From: gt3398b@prism.gatech.EDU (DELANO,ANDREW DOUGLAS)
Newsgroups: comp.sys.handhelds
Subject: DIFFERENTIAL EQUATIONS ON THE HP48SX
Message-ID: <15047@hydra.gatech.EDU>
Date: 12 Oct 90 03:08:16 GMT
Organization: Georgia Institute of Technology
Lines: 141
Here are some programs I wrote to do Euler's method, Improved
Euler's method, Taylor series method, and Runge Kutta method
for solving differential equations on the 48. They were very
useful in this quarters diffeqs class. I hope somebody else
out there finds them helpful. I didn't know of any other progams
like these existing so I wrote them myself. If anybody else
has any improvements, suggestions, or questions, please email
me. Also if I would be interested to know how many of you like
them so if you do use them, please let me know. Maybe somebody
can put these on an ftp site for those who miss this. Anyway,
here are some genral instructions and the programs.
1. Download this directory into your hp48sx. (name it what you wish).
2. There are 6 programs: EULR1,EULR2,TAYLr,R.K.,ENTR,PLT. You can
use EULR1, EULR2, TAYLr, and R.K. to solve equations. ENTR and
PLT are utilities.
3. Just press the method you wish and follow instructions.
GOOD LUCK
Andy Delano
Here is the directory:
_________________________________________________________________________
%%HP: T(3)A(D)F(.);
DIR
EULR1
\<< ENTR
DO DE EVAL h
* Y + DUP 'Y' STO X
h + 'X' STO X SWAP
{ 1 2 } \->ARRY \GS+
UNTIL X S ==
END { X Y DE
h S IV XS } PURGE
PLT
\>>
EULR2
\<< ENTR
DO DE EVAL
DUP h * Y + Y SWAP
'Y' STO X h + 'X'
STO DE EVAL SWAP
'Y' STO X h - 'X'
STO + h 2 / * Y +
DUP 'Y' STO X h +
'X' STO X SWAP { 1
2 } \->ARRY \GS+
UNTIL X S ==
END { X Y DE
h S IV XS } PURGE
PLT
\>>
TAYLr
\<< ENTR
DO DE 'X' \.d
DE 'Y' \.d DE EVAL *
+ h 2 ^ 2 / * DE
EVAL h * + Y + DUP
'Y' STO X h + 'X'
STO X SWAP { 1 2 }
\->ARRY \GS+
UNTIL X S ==
END { X Y DE
h S IV XS } PURGE
PLT
\>>
R.K.
\<< ENTR
DO DE EVAL
'K1' STO h .5 * X +
'X' STO Y DUP .5 h
* K1 * + 'Y' STO DE
EVAL 'K2' STO DUP
.5 h * K2 * + 'Y'
STO DE EVAL 'K3'
STO .5 h * X + 'X'
STO DUP h K3 * +
'Y' STO DE EVAL
'K4' STO 'Y' STO X
h - 'X' STO K1 2 K2
* 2 K3 * K4 + + + h
6 / * Y + 'Y' STO X
h + 'X' STO X Y { 1
2 } \->ARRY \GS+
UNTIL X S ==
END { K4 K3
K2 K1 X Y DE h XS S
IV } PURGE PLT
\>>
ENTR
\<<
"Enter Equation
y'=:"
"''" INPUT
"Enter Step Size (h):"
"" INPUT
"Enter X Startpoint:"
"" INPUT
"Enter X Endpoint:"
"" INPUT
"Enter Intial
Value(X,Y):"
"()" INPUT OBJ\->
'IV' STO OBJ\-> 'S'
STO OBJ\-> 'XS' STO
OBJ\-> 'h' STO OBJ\->
'DE' STO IV V\-> 'Y'
STO 'X' STO '\GSDAT'
PURGE X Y { 1 2 }
\->ARRY \GS+ XS 'X' STO
CLLCD
" Please Wait..."
2 DISP 0 FREEZE
\>>
PLT
\<<
"Would you like
to plot the results?
(Y/N)"
"" INPUT 'a' STO
IF a "Y" ==
THEN ERASE
SCATRPLOT GRAPH
ELSE
END \GSDAT {
\GSPAR PPAR a } PURGE
\>>
END
--
DELANO,ANDREW DOUGLAS
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp: ...!{decvax,hplabs,ncar,purdue,rutgers}!gatech!prism!gt3398b
Internet: gt3398b@prism.gatech.edu